home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / data / fapx / fapxfile.plp < prev    next >
Text File  |  1993-07-08  |  32KB  |  1,290 lines

  1. /*    共通ルーチン    */
  2. /*    ファイル名にワイルドカード(*,?)が含まれるかチェックする    */
  3. %wild    {
  4.     [file1]
  5.     case(@nochar(file1)==0,{Yes},{im({No})},
  6.         {No},{case(@getchar(file1,1,1),
  7.             {*},{im({Yes})},{?},{im({Yes})},
  8.             ,{im(@wild(@getchar(file1,2)))})});
  9.     };
  10.  
  11. /*    入力ファイル選択(ワイルドカード不可)    */
  12. %FILEsel0{
  13.     [MSG,TYP]
  14.     SNDMSG({erande_f.snd});footnote(MSG);
  15.     case(TYP={},{Yes},{OLDFILE:=@filesel},{No},{OLDFILE:=@filesel(TYP)});
  16.     case(OLDFILE={},{Yes},{im({})},
  17.         {No},
  18.         {
  19.         case    (@wild(OLDFILE),
  20.             {Yes},{display({ワイルドカード指定はできません\n});
  21.                 FILEsel0(MSG,TYP)},
  22.             {No},
  23.             {
  24.             case    (@nochar(@getcdir)==3,
  25.                 {Yes},{OLDFILE:=@getcdir|OLDFILE},
  26.                 {No},{OLDFILE:=@getcdir|{\}|OLDFILE});
  27.             case    (@filechk(OLDFILE),
  28.                 {No},{SNDMSG({okasi_f.snd});
  29.                     display(OLDFILE|{がありません\n});
  30.                     FILEsel0(MSG,TYP)},
  31.                 {Yes},{im(OLDFILE)});
  32.             });
  33.         });
  34.     };
  35.  
  36. /*    入力ファイル選択(ワイルドカード可)    */
  37. %FILEsel1{
  38.     [MSG,TYP]
  39.     SNDMSG({erande_f.snd});footnote(MSG);
  40.     case(TYP={},{Yes},{OLDFILE:=@filesel},
  41.         {No},{OLDFILE:=@filesel(TYP)});
  42.     case(OLDFILE={},{Yes},{im({})},
  43.         {No},
  44.         {
  45.         case(@wild(OLDFILE),
  46.             {Yes},    {case(@nochar(@getcdir)==3,
  47.                     {Yes},{OLDFILE:=@getcdir|OLDFILE},
  48.                     {No},{OLDFILE:=@getcdir|{\}|OLDFILE});
  49.                         im(OLDFILE)},
  50.             {No},    {case(@nochar(@getcdir)==3,
  51.                     {Yes},{OLDFILE:=@getcdir|OLDFILE},
  52.                     {No},{OLDFILE:=@getcdir|{\}|OLDFILE});
  53.                  case(@filechk(OLDFILE),
  54.                     {No},
  55.                     {SNDMSG({okasi_f.snd});
  56.                      display(OLDFILE|{がありません\n});
  57.                      FILEsel1(MSG,TYP)},
  58.                     {Yes},{im(OLDFILE)});
  59.                 }
  60.             );
  61.         });
  62.     };
  63.  
  64. /*    ファイル基本操作    */
  65. /*    ファイル表示    */
  66. %DISPLAY{
  67.     loop    ({
  68.         case    (@FILEsel0({表示するファイルを指定して下さい},)={},
  69.             {Yes},{im({No})},
  70.             {No},
  71.             {
  72.             footnote({ファイル表示  }|OLDFILE);
  73.             command({type }|OLDFILE);
  74.             loop    ({
  75.                 footnote({終了},{b});waitx();
  76.                 case(@xtype,101,{im({No})},201,{im({No})},
  77.                     ,{im({Yes})});
  78.                 });
  79.             im({Yes});
  80.             });
  81.         });
  82.     };
  83.  
  84. /*    ファイルダンプ表示    */
  85. %DUMP    {
  86.     loop    ({
  87.         case(@FILEsel0({16進表示するファイルを指定して下さい},)={},
  88.             {Yes},{im({No})},
  89.             {No},
  90.             {
  91.             footnote({ファイル16進表示  }|OLDFILE);
  92.             command({dump }|OLDFILE|{ /1});
  93.             loop    ({
  94.                 footnote({終了},{b});waitx();
  95.                 case(@xtype,101,{im({No})},201,{im({No})},
  96.                     ,{im({Yes})});
  97.                 });
  98.             im({Yes});
  99.             });
  100.         });
  101.     };
  102.  
  103. /*    ファイルサイズ表示    */
  104. %SIZE    {
  105.     loop    ({
  106.         case(@FILEsel1({サイズ表示するファイルを指定して下さい},)={},
  107.             {Yes},{im({No})},
  108.             {No},
  109.             {
  110.             footnote({ファイルサイズ表示  }|OLDFILE);
  111.             %cdir    @getcdir;setcdir(CDIR);
  112.             command({txf -a -n -lcx -i }|OLDFILE);
  113.             setcdir(cdir);im({Yes});
  114.             });
  115.         });
  116.     };
  117.  
  118. /*    EOFコード除去    */
  119. %RMZ    {
  120.     loop    ({
  121.         case(@FILEsel1({EOFコード除去するファイルを指定して下さい},)
  122.                 ={},
  123.             {Yes},{im({No})},
  124.             {No},
  125.             {
  126.             footnote({EOFコード除去  }|OLDFILE);
  127.             %cdir    @getcdir;setcdir(CDIR);
  128.             command({txf -a -n -rz -io }|OLDFILE);
  129.             setcdir(cdir);im({Yes});
  130.             });
  131.         });
  132.     };
  133.  
  134. /*    ファイル削除    */
  135. %DELETE    {
  136.     loop    ({
  137.         case(@FILEsel1({削除するファイルを指定して下さい},)={},
  138.             {Yes},{im({No})},
  139.             {No},
  140.             {
  141.             SNDMSG({kaknin_f.snd});
  142.             footnote({ファイル削除  }|OLDFILE);
  143.             select    (OLDFILE|{を削除してもいいですか?},
  144.                 Wtime4,,
  145.                 { は い },
  146.                 {case    (@tail(OLDFILE,{\})={*.*},
  147.                     {Yes},{command({echo y|del }|OLDFILE)},
  148.                     {No},{command({del }|OLDFILE)})},
  149.                 { いいえ },
  150.                 );
  151.             im({Yes});
  152.             });
  153.         });
  154.     };
  155.  
  156. /*    ファイル複写    */
  157. %COPY    {
  158.     %FILEsel2{
  159.         SNDMSG({erande_f.snd});
  160.         footnote({複写先のファイルを指定して下さい  複写元=}|OLDFILE);
  161.         NEWFILE:=@filesel;NEWDIR:=@getcdir;
  162.         case(@nochar(NEWDIR)==3,{No},{NEWDIR:=NEWDIR|{\}});
  163.         case(@wild(OLDFILE),{Yes},{NEWFILE:={*.*}});
  164.         case(NEWFILE={},{Yes},{NEWFILE:={*.*}});
  165.         NEWFILE:=NEWDIR|NEWFILE;
  166.         };
  167.  
  168.     loop    ({
  169.         case(@FILEsel1({複写元のファイルを指定して下さい},)={},
  170.             {Yes},{im({No})},
  171.             {No},
  172.             {
  173.             FILEsel2;
  174.             case(@filechk(NEWFILE),
  175.                 {Yes},
  176.                 {
  177.                 SNDMSG({kaknin_f.snd});
  178.                 footnote({ファイル複写  }|
  179.                         OLDFILE|{ -> }|NEWFILE);
  180.                 select    ({複写先のファイルに上書き}|
  181.                         {してもいいですか?},
  182.                     Wtime4,,
  183.                     { は い },
  184.                     {command({copy }|OLDFILE|{ }|NEWFILE)},
  185.                     { いいえ },
  186.                     );
  187.                 },
  188.                 {No},{command({copy }|OLDFILE|{ }|NEWFILE)}
  189.                 );
  190.             im({Yes});
  191.             });
  192.         });
  193.     };
  194.  
  195. /*    ファイル移動    */
  196. %MOVE    {
  197.     %FILEsel2{
  198.         SNDMSG({erande_f.snd});
  199.         footnote({移動先のディレクトリへ移動し右クリックして下さい  移動元=}|
  200.                 OLDFILE);
  201.         filesel;NEWDIR:=@getcdir;
  202.         case(@nochar(NEWDIR)==3,
  203.             {Yes},{NEWFILE:=NEWDIR|@tail(OLDFILE,{\})},
  204.             {No},{NEWFILE:=NEWDIR|{\}|@tail(OLDFILE,{\})});
  205.         };
  206.  
  207.     loop    ({
  208.         case(@FILEsel1({移動元のファイルを指定して下さい},)={},
  209.             {Yes},{im({No})},
  210.             {No},
  211.             {
  212.             FILEsel2;
  213.             var    fileno    [3];
  214.             case(@wild(OLDFILE),
  215.                 {No},
  216.                 {case    (@filechk(NEWFILE),
  217.                     {Yes},
  218.                     {
  219.                     SNDMSG({kaknin_f.snd});
  220.                     footnote({ファイル移動  }|
  221.                         OLDFILE|{ -> }|NEWFILE);
  222.                     select    ({移動先のファイルに上書き}|
  223.                         {してもいいですか?},
  224.                         Wtime4,,
  225.                         { は い },{fileno:={1}},
  226.                         {  いいえ  },{fileno:={0}});
  227.                     },
  228.                     {No},{fileno:={1}});
  229.                 },
  230.                 {Yes},{NEWFILE:=@body(NEWFILE,,{\})|{\*.*};
  231.                     fileno:={n}}
  232.                 );
  233.             case(fileno,
  234.                 {1},
  235.                 {
  236.                 command({del }|TEMP2|{_moptemp.tmp});
  237.                 command({copy }|OLDFILE|{ }|NEWFILE|
  238.                     { > }|TEMP2|{_moptemp.tmp});
  239.                 case    (@read(TEMP2|{_moptemp.tmp}),
  240.                     {        1 個のファイルを}|
  241.                     {コピーしました.\n},
  242.                     {command({del }|OLDFILE)});
  243.                 },
  244.                 {n},
  245.                 {
  246.                 command({del }|TEMP2|{_moptemp.tmp});
  247.                 command({copy }|OLDFILE|{ }|NEWFILE|
  248.                     { > }|TEMP2|{_moptemp.tmp});
  249.                 var    N    [4];
  250.                 N:=0;
  251.                 loop    ({
  252.                     N:=N+1;
  253.                     %f1 @read(TEMP2|{_moptemp.tmp},N,1);
  254.                     case(@tail(f1,{個のファイルを}),
  255.                         {コピーしました.\n},
  256.                         {im({No})},
  257.                         ,
  258.                         {
  259.                         case(@head(f1,{\n})<>
  260.                         TEMP2|{_MOPTEMP.TMP},
  261.                         {Yes},
  262.                         {command({del }|
  263.                             @head(f1,{\n}))});
  264.                         im({Yes});
  265.                         });
  266.                     });
  267.                 },
  268.                 {0},
  269.                 );
  270.             im({Yes});
  271.             });
  272.         });
  273.     };
  274.  
  275. /*    ファイル比較    */
  276. %COMPARE{
  277.     %FILEsel2{
  278.         SNDMSG({erande_f.snd});
  279.         footnote({比較先のファイルを指定して下さい  比較元=}|OLDFILE);
  280.         NEWFILE:=@filesel;NEWDIR:=@getcdir;
  281.         case(NEWFILE,{},{im({})},,
  282.             {
  283.             case(@nochar(NEWDIR)==3,
  284.                 {Yes},{NEWFILE:=NEWDIR|NEWFILE},
  285.                 {No},{NEWFILE:=NEWDIR|{\}|NEWFILE});
  286.             case(@filechk(NEWFILE),
  287.                 {No},
  288.                 {SNDMSG({okasi_f.snd});
  289.                  display(NEWFILE|{ がありません\n});
  290.                  FILEsel2},
  291.                 {Yes},{im(NEWFILE)});
  292.             });
  293.         };
  294.  
  295.     loop    ({
  296.         case(@FILEsel0({比較元のファイルを指定して下さい},)={},
  297.             {Yes},{im({No})},
  298.             {No},
  299.             {
  300.             case(@FILEsel2={},{Yes},{im({No})},
  301.                 {No},
  302.                 {
  303.                 footnote({ファイル比較  }|OLDFILE|
  304.                         { <-> }|NEWFILE);
  305.                 command({fc }|OLDFILE|{ }|NEWFILE);
  306.                 loop    ({
  307.                     footnote({終了},{b});
  308.                     waitx();
  309.                     case(@xtype,101,{im({No})},
  310.                         201,{im({No})},,{im({Yes})});
  311.                     });
  312.                 im({Yes});
  313.                 },
  314.                 {No},{im({No})}
  315.                 );
  316.             });
  317.         });
  318.     };
  319.  
  320. /*    ファイル名変更    */
  321. %RENAME    {
  322.     %FILEsel2{
  323.         SNDMSG({nyuryo_f.snd});
  324.         footnote({新ファイル名を入力して下さい  旧ファイル名=}|OLDFILE);
  325.         NEWFILE:=@input({新ファイル名を入力して下さい},,@tail(OLDFILE,{\}));
  326.         im(NEWFILE);
  327.         };
  328.  
  329.     loop    ({
  330.         case(@FILEsel1({ファイル名を変更するファイルを}|
  331.                     {指定して下さい},)={},
  332.             {Yes},{im({No})},
  333.             {No},
  334.             {
  335.             case(@FILEsel2={},
  336.                 {Yes},{im({No})},
  337.                 {No},
  338.                 {
  339.                 footnote({ファイル名変更  }|
  340.                         OLDFILE|{ -> }|NEWFILE);
  341.                 command({ren }|OLDFILE|{ }|NEWFILE);
  342.                 im({Yes});
  343.                 });
  344.             });
  345.         });
  346.     };
  347.  
  348. /*    全ファイル削除    */
  349. %DELall    {
  350.     SNDMSG({erande_f.snd});
  351.     footnote({全ファイル削除するディレクトリへ移動して}|
  352.             {右クリックして下さい});
  353.     filesel;OLDDIR:=@getcdir;SNDMSG({kaknin_f.snd});
  354.     case(@nochar(OLDDIR)==3,
  355.         {Yes},{footnote({全ファイル削除  }|OLDDIR|{*.*})},
  356.         {No},{footnote({全ファイル削除  }|OLDDIR|{\*.*})});
  357.     select    (OLDDIR|{の全ファイルを削除してもいいですか?},
  358.         Wtime4,,
  359.         { は い },
  360.         {setcdir(OLDDIR);command({echo y|del *.*})},
  361.         { いいえ },
  362.         );
  363.     };
  364.  
  365. /*    ファイル一覧表示    */
  366. %DIR    {
  367.     loop    ({
  368.         case(@FILEsel1({一覧表示するファイルを指定してください  },)={},
  369.             {Yes},
  370.             {
  371.             OLDDIR:=@getcdir;SNDMSG({kaknin_f.snd});
  372.             footnote({ファイル一覧表示  }|OLDDIR);
  373.             select    (OLDDIR|{の全ファイル一覧表示ですか?},
  374.                 Wtime4,,
  375.                 {全ファイル一覧表示},
  376.                 {
  377.                 command({dir }|OLDDIR);
  378.                 loop    ({
  379.                     footnote({終了},{b});
  380.                     waitx();
  381.                     case(@xtype,101,{im({No})},
  382.                         201,{im({No})},,{im({Yes})});
  383.                     });
  384.                 im({Yes});
  385.                 },
  386.                 {     取    消     },
  387.                 );
  388.             },
  389.             {No},
  390.             {
  391.             footnote({ファイル一覧表示  }|OLDFILE);
  392.             command({dir }|OLDFILE);
  393.             loop    ({
  394.                 footnote({終了},{b});
  395.                 waitx();
  396.                 case    (@xtype,
  397.                     101,{im({No})},201,{im({No})},
  398.                     ,{im({Yes})});
  399.                 });
  400.             im({Yes});
  401.             });
  402.         });
  403.     };
  404.  
  405. /*    ファイル編集    */
  406. %EDIT    {
  407.     [flag]
  408.     var    memono    [1];
  409.  
  410.     %FILEsel2{
  411.         [MSG,TYP]
  412.         SNDMSG({erande_f.snd});footnote(MSG);
  413.         case(TYP={},
  414.             {Yes},{NEWFILE:=@filesel},
  415.             {No},{NEWFILE:=@filesel(TYP)});
  416.         case(NEWFILE={},{Yes},{im({})},
  417.             {No},
  418.             {
  419.             case(@wild(NEWFILE),
  420.                 {Yes},
  421.                 {
  422.                 display({ワイルドカード指定はできません\n});
  423.                 FILEsel2(MSG,TYP);
  424.                 },
  425.                 {No},
  426.                 {
  427.                 case(@nochar(@getcdir)==3,
  428.                     {Yes},{NEWFILE:=@getcdir|NEWFILE},
  429.                     {No},{NEWFILE:=@getcdir|{\}|NEWFILE});
  430.                 im(NEWFILE);
  431.                 });
  432.             });
  433.         };
  434.  
  435.     %save    {
  436.         footnote({メモ}|memono|{を保存します});
  437.         %file    @FILEsel2({保存ファイル名を指定してください},);
  438.         case    (file<>{},
  439.             {Yes},
  440.             {
  441.             CloseAllMemo;delfile(file);mwrite(file,memono);
  442.             mopen(memono);mclose(3);im({No});
  443.             },
  444.             {No},{im({Yes})}
  445.             );
  446.         };
  447.  
  448.     %update{
  449.         footnote(OLDFILE|{を更新しています});
  450.         CloseAllMemo;delfile(OLDFILE);
  451.         mwrite(OLDFILE,memono);mopen(memono);mclose(3);im({No});
  452.         };
  453.  
  454.     %cancel    {
  455.         SNDMSG({kaknin_f.snd});footnote({文書編集を取消しますか?});
  456.         select({文書編集を取消しますか?},
  457.             Wtime4,{footnote({});im({Yes})},
  458.             {  は  い  },
  459.             {
  460.             CloseAllMemo;delfile(TEMP2|{_mopmemo.bak});
  461.             mwrite(TEMP2|{_mopmemo.bak},memono);
  462.             mopen(memono);mclose(3);footnote({});im({No});
  463.             },
  464.             {  いいえ  },{footnote({});im({Yes})}
  465.             );
  466.         };
  467.  
  468.     %rewrite{
  469.         footnote({編集中のメモ内容を清書しています});
  470.         CloseAllMemo;%cdir @getcdir;setcdir(CDIR);
  471.         delfile(TEMP2|{_moptext.tmp});
  472.         delfile(TEMP2|{_moptext.new});
  473.         mwrite(TEMP2|{_moptext.tmp},memono);
  474.          dispoff(!DEBUG);
  475.         command({txf -f -i }|TEMP2|{_moptext.tmp}|
  476.                 { -o }|TEMP2|{_moptext.new});
  477.           dispoff({No});
  478.         case(@filechk(TEMP2|{_moptext.new}),
  479.             {Yes},
  480.             {
  481.             mclear(memono);mread(TEMP2|{_moptext.new},memono);
  482.             mopen(memono,0,21,639,459,{w});
  483.             },
  484.             {No},
  485.             {
  486.             display({清書機能には TXF.EXE がパスの通った}|
  487.                     {ディレクトリに必要です\n});
  488.             wait(2);mopen(memono,0,21,639,459,{w});
  489.             });
  490.         setcdir(cdir);im({Yes});
  491.         };
  492.  
  493.     %MEMONO    @mlast;
  494.     case(MEMONO==9,
  495.         {Yes},
  496.         {
  497.         footnote({メモ9を利用してファイル編集を行います});
  498.         SNDMSG({kaknin_f.snd});
  499.         select({メモ9を利用してファイル編集を行います},
  500.             Wtime4,{memono:=0},
  501.             { は い },{memono:=9},{ いいえ },{memono:=0});
  502.         },
  503.         {No},{memono:=MEMONO+1}
  504.         );
  505.     case    (memono>0&&flag==1,
  506.         {Yes},
  507.         {
  508.         loop    ({
  509.             CloseAllMemo;
  510.             case(@FILEsel0({編集するファイルを選択}|
  511.                         {してください},)<>{},
  512.                 {Yes},
  513.                 {
  514.                 mclear(memono);mread(OLDFILE,memono);
  515.                 mopen(memono,0,21,639,459,{w});
  516.                 loop    ({
  517.                     footnote({更新取消清書UPLD},{b});
  518.                     waitx();
  519.                     case    (@xtype,
  520.                         101,update,201,update,
  521.                         102,cancel,202,cancel,
  522.                         103,rewrite,203,rewrite,
  523.                         104,{UP1(memono)},
  524.                         204,{UP1(memono)},
  525.                         ,{im({Yes})});
  526.                     });
  527.                 im({Yes});
  528.                 },
  529.                 {No},{im({No})}
  530.                 );
  531.             });
  532.         },
  533.         {No},    /* 新規ファイル編集の場合 */
  534.         {
  535.         case(memono>0,
  536.             {Yes},
  537.             {
  538.             CloseAllMemo;madd(memono,{\n});mclear(memono);
  539.             mopen(memono,0,21,639,459,{w});
  540.             loop    ({
  541.                 footnote({保存取消清書UPLD},{b});waitx();
  542.                 case    (@xtype,
  543.                     101,save,201,save,
  544.                     102,cancel,202,cancel,
  545.                     103,rewrite,203,rewrite,
  546.                     104,{UP1(memono)},204,{UP1(memono)},
  547.                     ,{im({Yes})});
  548.                 });
  549.             });
  550.         });
  551.     };
  552.  
  553. /*    オートアップロード制御ファイル作成処理    */
  554. %UP1    {
  555.     [memono]
  556.     %up2    {
  557.         footnote({メモの保存を行いますか?});SNDMSG({erande_f.snd});
  558.         select({メモの保存をおこないますか?},
  559.             Wtime4,{im({Yes})},
  560.             { ファイルに保存して終了 },{save},
  561.             {ファイルに保存せずに終了},
  562.             {CloseAllMemo;mopen(memono);mclose(3);im({No})},
  563.             {     編集画面に戻る     },{im({Yes})});
  564.         };
  565.  
  566.     footnote({アップロード先は?});SNDMSG({erande_f.snd});
  567.     select({アップロード先は?},
  568.         Wtime4,{im({Yes})},
  569.         { テキストメール },{AUTOmail;up2},
  570.         {   フォーラム   },{AUTOforum;up2},
  571.         {シスオペ宛メール},{AUTOsmail;up2},
  572.         { ホームパーティ },{AUTOhp;up2},
  573.         {    パティオ    },{AUTOpatio;up2},
  574.         {  プロフィール  },{AUTOprof;up2},
  575.         {    取    消    },{im({Yes})});
  576.     };
  577.  
  578. /*    テキストメールアップ制御文作成    */
  579. %AUTOmail{
  580.     footnote({テキストメール送信制御文作成});
  581.     var    mail    [127];
  582.     var    title    [40];
  583.     var    date    [6];
  584.     var    ok    [2];
  585.     loop    ({
  586.         SNDMSG({nyuryo_f.snd});
  587.         %a    @plane(    {cテキストメール送信\n}|
  588.                 {t  送信先ID  /\n}|
  589.                 {t   タイトル   /xxxxxxxxxxxxxxxxxxxx}|
  590.                         {xxxxxxxxxxxxxxxxxxxx\n}|
  591.                 {t 送信日付指定 /xxxxxx\n}|
  592.                 {s              / 登録 / 取消 \n},
  593.                 mail,title,date);
  594.         mail:=    @head(@getline(a,1,1),{\n});
  595.         title:=    @head(@getline(a,2,1),{\n});
  596.         date:=    @head(@getline(a,3,1),{\n});
  597.         ok:=    @head(@getline(a,4,1),{\n});
  598.         });
  599.     case(ok==1,{Yes},
  600.         {
  601.         %file    @crefile(UP,{UP});CloseAllMemo;
  602.         mwrite(UP2|file,memono);mopen(memono,0,21,639,459,{w});
  603.         %cntl    {mail=}|mail|{;}|{date=}|date|{;}|
  604.             {file=}|UP2|file|{;}|{title=}|title;
  605.         write(UP2|{_mopres.ctl},cntl|{\n});
  606.         });
  607.     };
  608.  
  609. /*    フォーラム書き込み制御文作成    */
  610. %AUTOforum{
  611.     footnote({フォーラムの会議室への発言制御文作成});
  612.     var    forum    [8];
  613.     var    mes    [2];
  614.     var    reply    [5];
  615.     var    title    [40];
  616.     var    ok    [2];
  617.     loop    ({
  618.         SNDMSG({nyuryo_f.snd});
  619.         %a    @plane(    {cフォーラムの会議室への発言\n}|
  620.                 {t フォーラム名 /xxxxxxxx\n}|
  621.                 {t  会議室番号  /xx\n}|
  622.                 {tコメント元番号/xxxxx\n}|
  623.                 {t   タイトル   /xxxxxxxxxxxxxxxxxxxx}|
  624.                         {xxxxxxxxxxxxxxxxxxxx\n}|
  625.                 {s              / 登録 / 取消 \n},
  626.                 forum,mes,reply,title);
  627.         forum:=    @head(@getline(a,1,1),{\n});
  628.         mes:=    @head(@getline(a,2,1),{\n});
  629.         reply:=    @head(@getline(a,3,1),{\n});
  630.         title:=    @head(@getline(a,4,1),{\n});
  631.         ok:=    @head(@getline(a,5,1),{\n});
  632.         });
  633.     case(ok==1,{Yes},
  634.         {
  635.         %file    @crefile(UP,{UP});CloseAllMemo;
  636.         mwrite(UP2|file,memono);mopen(memono,0,21,639,459,{w});
  637.         %cntl    {forum=}|forum|{;}|{mes=}|mes|{;}|{reply=}|reply|{;}|
  638.             {file=}|UP2|file|{;}|{title=}|title;
  639.         write(UP2|{_mopres.ctl},cntl|{\n});
  640.         });
  641.     };
  642.  
  643. /*    シスオペ宛メールアップ制御文作成    */
  644. %AUTOsmail{
  645.     footnote({シスオペ宛メール送信制御文作成});
  646.     var    forum    [8];
  647.     var    title    [40];
  648.     var    ok    [2];
  649.     loop    ({
  650.         SNDMSG({nyuryo_f.snd});
  651.         %a    @plane(    {cシスオペ宛メール送信\n}|
  652.                 {t フォーラム名 /xxxxxxxx\n}|
  653.                 {t   タイトル   /xxxxxxxxxxxxxxxxxxxx}|
  654.                         {xxxxxxxxxxxxxxxxxxxx\n}|
  655.                 {s              / 登録 / 取消 \n},
  656.                 forum,title);
  657.         forum:=    @head(@getline(a,1,1),{\n});
  658.         title:=    @head(@getline(a,2,1),{\n});
  659.         ok:=    @head(@getline(a,3,1),{\n});
  660.         });
  661.     case(ok==1,{Yes},
  662.         {
  663.         %file    @crefile(UP,{UP});CloseAllMemo;
  664.         mwrite(UP2|file,memono);mopen(memono,0,21,639,459,{w});
  665.         %cntl    {sysmail=}|forum|{;}|{file=}|UP2|file|{;}|
  666.             {title=}|title;
  667.         write(UP2|{_mopres.ctl},cntl|{\n});
  668.         });
  669.     };
  670.  
  671. /*    ホームパーティ書き込み制御文作成    */
  672. %AUTOhp    {
  673.     footnote({ホームパーティへの発言制御文作成});
  674.     var    hp    [8];
  675.     var    pass    [8];
  676.     var    title    [40];
  677.     var    ok    [2];
  678.     loop    ({
  679.         SNDMSG({nyuryo_f.snd});
  680.         %a    @plane(    {cホームパーティへの発言\n}|
  681.                 {t  HPのID  /xxxxxxxx\n}|
  682.                 {t  パスワード  /xxxxxxxx\n}|
  683.                 {s              / 検索 \n}|
  684.                 {t   タイトル   /xxxxxxxxxxxxxxxxxxxx}|
  685.                         {xxxxxxxxxxxxxxxxxxxx\n}|
  686.                 {s              / 登録 / 取消 \n},
  687.                 hp,pass,title);
  688.         hp:=    @head(@getline(a,1,1),{\n});
  689.         pass:=    @head(@getline(a,2,1),{\n});
  690.         %scan    @head(@getline(a,3,1),{\n});
  691.         title:=    @head(@getline(a,4,1),{\n});
  692.         ok:=    @head(@getline(a,5,1),{\n});
  693.         case(scan==1,{Yes},
  694.             {pass:=@tail(NIFTY,{/}|hp|{/},{/});im({Yes})});
  695.         case(ok==1,{Yes},
  696.             {
  697.             %file    @crefile(UP,{UP});CloseAllMemo;
  698.             mwrite(UP2|file,memono);mopen(memono,0,21,639,459,{w});
  699.             %cntl    {hp=}|hp|{;}|{pass=}|pass|{;}|
  700.                 {file=}|UP2|file|{;}|{title=}|title;
  701.             write(UP2|{_mopres.ctl},cntl|{\n});im({No});
  702.             });
  703.         });
  704.     };
  705.  
  706. /*    パティオ書き込み制御文作成    */
  707. %AUTOpatio{
  708.     footnote({パティオへの発言制御文作成});
  709.     var    patio    [8];
  710.     var    pass    [8];
  711.     var    mes    [3];
  712.     var    reply    [5];
  713.     var    title    [40];
  714.     var    ok    [2];
  715.     reply:={1};
  716.     loop    ({
  717.         SNDMSG({nyuryo_f.snd});
  718.         %a    @plane(    {cパティオへの発言\n}|
  719.                 {tパティオのID/xxxxxxxx\n}|
  720.                 {t  パスワード  /xxxxxxxx\n}|
  721.                 {s              / 検索 \n}|
  722.             /*    {t  会議室番号  /xxxxxxxx\n}|    */
  723.                 {tコメント元番号/xxxxxxxx\n}|
  724.                 {t   タイトル   /xxxxxxxxxxxxxxxxxxxx}|
  725.                         {xxxxxxxxxxxxxxxxxxxx\n}|
  726.                 {s              / 登録 / 取消 \n},
  727.                 patio,pass,mes,reply,title);
  728.         patio:=    @head(@getline(a,1,1),{\n});
  729.         pass:=    @head(@getline(a,2,1),{\n});
  730.         %scan    @head(@getline(a,3,1),{\n});
  731.     /*    mes:=    @head(@getline(a,4,1),{\n});    */
  732.         reply:=    @head(@getline(a,4,1),{\n});
  733.         title:=    @head(@getline(a,5,1),{\n});
  734.         ok:=    @head(@getline(a,6,1),{\n});
  735.         case(scan==1,{Yes},
  736.             {pass:=@tail(NIFTY,{/}|patio|{/},{/});
  737.                 im({Yes})});
  738.         case(ok==1,{Yes},
  739.             {
  740.             %file    @crefile(UP,{UP});CloseAllMemo;
  741.             mwrite(UP2|file,memono);mopen(memono,0,21,639,459,{w});
  742.             %cntl    {patio=}|patio|{;}|{pass=}|pass|{;}|
  743.                 {mes=}|{1}|{;}|{reply=}|reply|{;}|
  744.                 {file=}|UP2|file|{;}|{title=}|title;
  745.             write(UP2|{_mopres.ctl},cntl|{\n});im({No});
  746.             });
  747.         });
  748.     };
  749.  
  750. /*    プロフィール情報書き込み制御文作成    */
  751. %AUTOprof{
  752.     footnote({プロフィール情報登録制御文作成});
  753.     var    ok    [2];
  754.     loop    ({
  755.         %a    @plane(    {cプロフィール情報登録\n}|
  756.                 {s              / 登録 / 取消 \n}
  757.                 );
  758.         ok:=@head(@getline(a,1,1),{\n});
  759.         });
  760.     case(ok==1,{Yes},
  761.         {
  762.         %file    @crefile(UP,{UP});CloseAllMemo;
  763.         mwrite(UP2|file,memono);mopen(memono,0,21,639,459,{w});
  764.         %cntl    {profile=}|{;}|{file=}|UP2|file|{;};
  765.         write(UP2|{_mopres.ctl},cntl|{\n});
  766.         });
  767.     };
  768.  
  769. /*    ファイル実行    */
  770. %EXEC    {
  771.     var    PARAM    [64];
  772.     %execfile{
  773.         SNDMSG({nyuryo_f.snd});
  774.         PARAM:=@input(OLDFILE|{ のパラメータを入力して下さい});
  775.         footnote({ファイル実行中  }|OLDFILE);
  776.         command(OLDFILE|{ }|PARAM);im({Yes});
  777.         };
  778.     loop    ({
  779.         case(@FILEsel0({実行するファイルを指定して下さい},)={},
  780.             {Yes},{im({No})},
  781.             {No},
  782.             {case(@tail(OLDFILE,{.}),
  783.                 {COM},execfile,{EXE},execfile,{BAT},execfile,
  784.                 ,{SNDMSG({okasi_f.snd});
  785.                     display(OLDFILE|{ は実行できません});
  786.                     im({Yes})});
  787.             });
  788.         });
  789.     };
  790.  
  791. /*    NAPLPSファイル表示    */
  792. %NAPLPS    {
  793.     loop    ({
  794.         case(@FILEsel0({NAPLPSデータファイルを指定して下さい},{NPB})
  795.                 ={},
  796.             {Yes},{im({No})},
  797.             {No},
  798.             {
  799.             footnote({NAPLPSファイル表示  }|OLDFILE);
  800.             naplps(OLDFILE);
  801.             loop    ({
  802.                 footnote({終了},{b});waitx();
  803.                 case(@xtype,101,{napend;im({No});},
  804.                     201,{napend;im({No});},,{im({Yes})});
  805.                 });
  806.             im({Yes});
  807.             });
  808.         });
  809.     };
  810.  
  811. /*    ファイル応用操作    (lha,ish,diet)    */
  812. /*    ファイル凍結    */
  813. %LHAarc    {
  814.     %FILEsel2{
  815.         SNDMSG({nyuryo_f.snd});
  816.         footnote({書庫ファイル名を入力して下さい  元ファイル=}|OLDFILE);
  817.         NEWFILE:=@filesel({LZH});NEWDIR:=@getcdir;
  818.         case(NEWFILE<>{},
  819.             {Yes},{case(@nochar(NEWDIR)==3,
  820.                 {Yes},{NEWFILE:=NEWDIR|NEWFILE},
  821.                 {No},{NEWFILE:=NEWDIR|{\}|NEWFILE})});
  822.         im(NEWFILE);
  823.         };
  824.  
  825.     loop    ({
  826.         case(@FILEsel1({圧縮凍結するファイルを指定して下さい},)={},
  827.             {Yes},{im({No})},
  828.             {No},
  829.             {
  830.             case(@FILEsel2={},{Yes},{im({No})},
  831.                 {No},
  832.                 {
  833.                 footnote({ファイル圧縮凍結処理中  }|
  834.                         OLDFILE|{ -> }|NEWFILE);
  835.                 command({lha u }|NEWFILE|{ }|OLDFILE);
  836.                 im({Yes});
  837.                 });
  838.             });
  839.         });
  840.     };
  841.  
  842. /*    ファイル解凍    */
  843. %LHAext    {
  844.     %FILEsel2{
  845.         SNDMSG({erande_f.snd});
  846.         footnote({解凍先のディレクトリへ移動し右クリックして下さい  解凍元=}|
  847.                 OLDFILE);
  848.         %dmy    @filesel;NEWDIR:=@getcdir;
  849.         case(@nochar(NEWDIR)==3,
  850.             {Yes},{NEWFILE:=NEWDIR|@tail(OLDFILE,{\})},
  851.             {No},{NEWFILE:=NEWDIR|{\}|@tail(OLDFILE,{\})});
  852.         };
  853.  
  854.     loop    ({
  855.         case(@FILEsel0({解凍する *.LZH ファイルを指定して下さい},{LZH})
  856.                 ={},
  857.             {Yes},{im({No})},
  858.             {No},
  859.             {
  860.             FILEsel2;footnote({ファイル解凍処理中  }|OLDFILE);
  861.             command({lha x }|OLDFILE);im({Yes});
  862.             });
  863.         });
  864.     };
  865.  
  866. /*    凍結ファイル内容表示    */
  867. %LHAlst    {
  868.     loop    ({
  869.         case(@FILEsel0({内容表示する *.LZH ファイルを}|
  870.                 {指定して下さい},{LZH})={},
  871.             {Yes},{im({No})},
  872.             {No},
  873.             {
  874.             footnote({凍結ファイル内容表示中  }|OLDFILE);
  875.             command({lha l }|OLDFILE);im({Yes});
  876.             });
  877.         });
  878.     };
  879.  
  880. /*    ファイル石化    */
  881. %ISHstr    {
  882.     loop    ({
  883.         case(@FILEsel1({*.ISH ファイルに変換するファイルを}|
  884.                 {指定して下さい},)={},
  885.             {Yes},{im({No})},
  886.             {No},
  887.             {
  888.             case(OLDFILE={},{Yes},{im({No})},
  889.                 {No},
  890.                 {
  891.                 footnote({ISHファイル変換処理中  }|OLDFILE);
  892.                 command({ish }|OLDFILE|{ /ss});im({Yes});
  893.                 });
  894.             });
  895.         });
  896.     };
  897.  
  898. /*    ファイル解石    */
  899. %ISHres    {
  900.     loop    ({
  901.         case(@FILEsel1({復元する *.ISH ファイルを指定して下さい},{ISH})
  902.                 ={},
  903.             {Yes},{im({No})},
  904.             {No},
  905.             {
  906.             case(OLDFILE={},{Yes},{im({No})},
  907.                 {No},
  908.                 {
  909.                 footnote({ISHファイル復元処理中  }|OLDFILE);
  910.                 command({ish }|OLDFILE|{ /r});im({Yes});
  911.                 });
  912.             });
  913.         });
  914.     };
  915.  
  916. /*    ダイエット処理    */
  917. %DIETarc{
  918.     loop    ({
  919.         case(@FILEsel1({ダイエットするファイルを指定して下さい},)={},
  920.             {Yes},{im({No})},
  921.             {No},
  922.             {
  923.             case(OLDFILE={},{Yes},{im({No})},
  924.                 {No},
  925.                 {
  926.                 footnote({ダイエット処理中  }|OLDFILE);
  927.                 command({diet }|OLDFILE);im({Yes});
  928.                 });
  929.             });
  930.         });
  931.     };
  932.  
  933. /*    ダイエットファイル復元    */
  934. %DIETres{
  935.     loop    ({
  936.         case(@FILEsel1({復元するダイエットファイルを}|
  937.                     {指定して下さい},)={},
  938.             {Yes},{im({No})},
  939.             {No},
  940.             {
  941.             case(OLDFILE={},{Yes},{im({No})},
  942.                 {No},
  943.                 {
  944.                 footnote({ダイエットファイル復元処理中  }|
  945.                         OLDFILE);
  946.                 command({diet -ra }|OLDFILE);im({Yes});
  947.                 });
  948.             });
  949.         });
  950.     };
  951.  
  952. /*    差分ファイル作成処理    */
  953. %BDIFF    {
  954.     %FILEsel2{
  955.         SNDMSG({nyuryo_f.snd});
  956.         footnote({新ファイル名を入力して下さい  旧ファイル=}|OLDFILE);
  957.         NEWFILE:=@filesel;NEWDIR:=@getcdir;
  958.         case(NEWFILE<>{},
  959.             {Yes},{case(@nochar(NEWDIR)==3,
  960.                 {Yes},{NEWFILE:=NEWDIR|NEWFILE},
  961.                 {No},{NEWFILE:=NEWDIR|{\}|NEWFILE})});
  962.         im(NEWFILE);
  963.         };
  964.  
  965.     loop    ({
  966.         case(@FILEsel0({差分を作成する旧ファイルを指定して下さい},)={},
  967.             {Yes},{im({No})},
  968.             {No},
  969.             {
  970.             case(@FILEsel2={},{Yes},{im({No})},
  971.                 {No},
  972.                 {
  973.                 footnote({ファイル差分作成処理中  }|
  974.                         OLDFILE|{ -> }|NEWFILE);
  975.                 command({BDIFF }|OLDFILE|{ }|NEWFILE);
  976.                 im({Yes});
  977.                 });
  978.             });
  979.         });
  980.     };
  981.  
  982. /*    差分ファイル復元処理    */
  983. %BUPDATE{
  984.     loop    ({
  985.         case(@FILEsel0({差分ファイルを指定して下さい},{BDF})={},
  986.             {Yes},{im({No})},
  987.             {No},
  988.             {
  989.             footnote({ファイル差分更新処理中  差分ファイル=}|OLDFILE);
  990.             command({BUPDATE }|OLDFILE);im({Yes});
  991.             });
  992.         });
  993.     };
  994.  
  995. /*    ディレクトリ基本操作    */
  996. /*    ツリー表示    */
  997. %TREE    {
  998.     SNDMSG({erande_f.snd});
  999.     footnote({ツリー表示するディレクトリへ移動して右クリックして下さい});
  1000.     filesel;OLDDIR:=@getcdir;footnote({ツリー表示中  }|OLDDIR);
  1001.     command({tree }|OLDDIR);
  1002.     loop    ({
  1003.         footnote({終了},{b});waitx();
  1004.         case(@xtype,101,{im({No})},201,{im({No})},,{im({Yes})});
  1005.         });
  1006.     };
  1007.  
  1008. /*    ディレクトリ作成    */
  1009. %MKDIR    {
  1010.     SNDMSG({erande_f.snd});
  1011.     footnote({作成するディレクトリ名を指定して下さい});
  1012.     NEWDIR:=@filesel;OLDDIR:=@getcdir;
  1013.     case(@nochar(OLDDIR)==3,
  1014.         {Yes},{NEWDIR:=OLDDIR|NEWDIR},
  1015.         {No},{NEWDIR:=OLDDIR|{\}|NEWDIR});
  1016.     mkdir2(NEWDIR);
  1017.     };
  1018.  
  1019. /*    ディレクトリ削除    */
  1020. %RMDIR    {
  1021.     SNDMSG({erande_f.snd});
  1022.     footnote({削除するディレクトリへ移動して右クリックして下さい});
  1023.     filesel;OLDDIR:=@getcdir;
  1024.     case(@nochar(OLDDIR)==3,
  1025.         {Yes},
  1026.         {
  1027.         SNDMSG({okasi_f.snd});
  1028.         display({ルートディレクトリは削除できません\n});
  1029.         },
  1030.         {No},
  1031.         {
  1032.         SNDMSG({kaknin_f.snd});
  1033.         footnote({削除ディレクトリ=}|OLDDIR);
  1034.         select    ({ディレクトリ }|OLDDIR|{ を削除してもいいですか?},
  1035.             Wtime4,,
  1036.             { は い },
  1037.             {
  1038.             setcdir2(@body(OLDDIR,,{\}));
  1039.             command({rmdir }|@tail(OLDDIR,{\}));
  1040.             },
  1041.             { いいえ },
  1042.             );
  1043.         });
  1044.     };
  1045.  
  1046. /*    ディレクトリ複写    */
  1047. %DIRCOPY{
  1048.     %FILEsel1{
  1049.         SNDMSG({erande_f.snd});
  1050.         footnote({複写元のディレクトリへ移動して右クリックして下さい});
  1051.         filesel;OLDDIR:=@getcdir;
  1052.         };
  1053.  
  1054.     %FILEsel2{
  1055.         SNDMSG({erande_f.snd});
  1056.         footnote({複写先のディレクトリは?  複写元=}|OLDDIR);
  1057.         filesel;NEWDIR:=@getcdir;
  1058.         };
  1059.  
  1060.     FILEsel1;display({複写元ディレクトリ  }|OLDDIR|{\n});
  1061.     wait(1);FILEsel2;SNDMSG({kaknin_f.snd});
  1062.     footnote({ディレクトリ複写  }|OLDDIR|{ -> }|NEWDIR);
  1063.     select    ({ディレクトリ複写を実行してもいいですか?},
  1064.         Wtime4,,
  1065.         { は い },{command({xcopy }|OLDDIR|{ }|NEWDIR|{ /s /e})},
  1066.         { いいえ },
  1067.         );
  1068.     };
  1069.  
  1070. /*    フロッピィディスク操作    */
  1071. /*    フロッピィディスク初期化    */
  1072. %FORMAT    {
  1073.     var    DEVICE    [2];
  1074.     var    FPDtype    [9];
  1075.     var    OPT    [2];
  1076.     var    LABEL    [11];
  1077.     LABEL:={};
  1078.     loop    ({
  1079.         SNDMSG({erande_f.snd});
  1080.         footnote({初期化するフロッピィディスク装置を選んで下さい});
  1081.         select    ({初期化するフロッピィディスク装置を選んで下さい},
  1082.             Wtime4,{DEVICE:={}},
  1083.             {  A  },{DEVICE:={A:}},
  1084.             {  B  },{DEVICE:={B:}},
  1085.             { 終 了 },{DEVICE:={}});
  1086.         case(DEVICE={},{Yes},{im({No})},
  1087.             {No},
  1088.             {
  1089.             SNDMSG({erande_f.snd});
  1090.             footnote({フロッピィディスクの種類を選んで下さい});
  1091.             select    ({フロッピィディスクの種類を選んで下さい},
  1092.                 Wtime4,{FPDtype:={2HD/1.2MB}},
  1093.                 {2HD/1.2MB},
  1094.                 {FPDtype:={2HD/1.2MB};OPT:={}},
  1095.                 {2DD/640KB},
  1096.                 {FPDtype:={2DD/640KB};OPT:={/8}},
  1097.                 {2DD/720KB},
  1098.                 {FPDtype:={2DD/720KB};OPT:={/9}}
  1099.                 );
  1100.             SNDMSG({nyuryo_f.snd});
  1101.             footnote({ボリュームラベル名を入力して下さい});
  1102.             LABEL:=@input({ボリュームラベル名を入力して下さい},,
  1103.                     LABEL);
  1104.             case(@nochar(LABEL)>11,
  1105.                 {Yes},{LABEL:=@getchar(LABEL,1,11)});
  1106.             SNDMSG({kaknin_f.snd});
  1107.             footnote({DEVICE=}|DEVICE|{  TYPE=}|FPDtype|
  1108.                     {  LABEL=}|LABEL);
  1109.             select({初期化を行います}|
  1110.                 {  フロッピィをセットして下さい},
  1111.                 Wtime4,,
  1112.                 { O K },
  1113.                 {
  1114.                 footnote({フロッピィディスク初期化中  }|
  1115.                         DEVICE);
  1116.                 delfile(TEMP2|{_mopform.tmp});
  1117.                 write(TEMP2|{_mopform.tmp},{\n}|LABEL|{\nN\n});
  1118.                 command({type }|TEMP2|{_mopform.tmp}|
  1119.                     {|format }|DEVICE|{ }|OPT);
  1120.                 },
  1121.                 { N G },
  1122.                 );
  1123.             im({Yes});
  1124.             });
  1125.         });
  1126.     };
  1127.  
  1128. /*    フロッピィディスク複写    */
  1129. %DISKCOPY{
  1130.     var    DEVICE1    [2];
  1131.     var    DEVICE2    [2];
  1132.     loop    ({
  1133.         SNDMSG({erande_f.snd});
  1134.         footnote({複写元と複写先を選んで下さい});
  1135.         select({複写元と複写先を選んで下さい},
  1136.             Wtime4,{DEVICE1:={}},
  1137.             { A → B },{DEVICE1:={A:};DEVICE2:={B:}},
  1138.             { B → A },{DEVICE1:={B:};DEVICE2:={A:}},
  1139.             {  終 了  },{DEVICE1:={}});
  1140.         case(DEVICE1={},{Yes},{im({No})},
  1141.             {No},
  1142.             {
  1143.             SNDMSG({kaknin_f.snd});
  1144.             footnote({フロッピィディスク複写  }|
  1145.                     DEVICE1|{ -> }|DEVICE2);
  1146.             select    ({複写を行います}|
  1147.                     {  フロッピィをセットして下さい},
  1148.                 Wtime4,,
  1149.                 { O K },
  1150.                 {
  1151.                 delfile(TEMP2|{_mopdkcp.tmp});
  1152.                 write(TEMP2|{_mopdkcp.tmp},{\nN\n});
  1153.                 command({type }|TEMP2|{_mopdkcp.tmp}|
  1154.                     {|diskcopy }|DEVICE1|{ }|DEVICE2);
  1155.                 },
  1156.                 { N G },
  1157.                 );
  1158.             im({Yes});
  1159.             });
  1160.         });
  1161.     };
  1162.  
  1163. /*    フロッピィディスク比較    */
  1164. %DISKCOMP{
  1165.     loop    ({
  1166.         SNDMSG({kaknin_f.snd});
  1167.         footnote({フロッピィディスク比較  A: <-> B:});
  1168.         select    ({比較を行います  フロッピィをセットして下さい},
  1169.             Wtime4,,
  1170.             { O K },
  1171.             {
  1172.             delfile(TEMP2|{_mopdkcm.tmp});
  1173.             write(TEMP2|{_mopdkcm.tmp},{\nN\n});
  1174.             command({type }|TEMP2|{_mopdkcm.tmp}|
  1175.                 {|diskcomp A: B:});
  1176.             im({Yes});
  1177.             },
  1178.             { 終  了 },{im({No})}
  1179.             );
  1180.         });
  1181.     };
  1182.  
  1183. /*    コマンドシェル実行    */
  1184. %COMMAND{
  1185.     footnote({コマンド実行モード中  EXIT<cr>と入力すると終了します});
  1186.     command({command.com});
  1187.     };
  1188.  
  1189. /*    詳細メニュー    */
  1190. /*    ファイル基本操作の選択    */
  1191. %FILEman1{
  1192.     loop    ({
  1193.         SNDMSG({erande_f.snd});
  1194.         footnote({ファイル基本操作の処理を選択して下さい});
  1195.         select({ファイル基本操作メニュー},
  1196.             Wtime4,{im({No})},
  1197.             {ファイル表示     -type     },{DISPLAY;im({Yes})},
  1198.             {ファイル16進表示 =DUMP     },{DUMP;im({Yes})},
  1199.             {ファイルサイズ   >TXF -lcx },{SIZE;im({Yes})},
  1200.             {ファイル複写     -copy     },{COPY;im({Yes})},
  1201.             {ファイル移動     -copy&del },{MOVE;im({Yes})},
  1202.             {ファイル名変更   -rename   },{RENAME;im({Yes})},
  1203.             {ファイル比較     =FC       },{COMPARE;im({Yes})},
  1204.             {ファイル削除     -del      },{DELETE;im({Yes})},
  1205.             {全ファイル削除   -del *.*  },{DELall;im({Yes})},
  1206.             {ファイル一覧表示 -dir      },{DIR;im({Yes})},
  1207.             {EOFコード除去    >TXF -rz  },{RMZ;im({Yes})},
  1208.             {NAPLPS表示 -         },{NAPLPS;im({Yes})},
  1209.             {        終       了        },{im({No})});
  1210.         });
  1211.     };
  1212.  
  1213. /*    ファイル応用操作の選択    */
  1214. %FILEman2{
  1215.     loop    ({
  1216.         SNDMSG({erande_f.snd});
  1217.         footnote({ファイル応用操作の処理を選択して下さい});
  1218.         select({ファイル応用操作メニュー},
  1219.             Wtime4,{im({No})},
  1220.             {ファイル圧縮凍結 >LHA u    },{LHAarc;im({Yes})},
  1221.             {ファイル解凍     >LHA x    },{LHAext;im({Yes})},
  1222.             {凍結ファイル一覧 >LHA l    },{LHAlst;im({Yes})},
  1223.             {ファイル石化     >ISH /s   },{ISHstr;im({Yes})},
  1224.             {ファイル解石     >ISH /r   },{ISHres;im({Yes})},
  1225.             {ファイル圧縮     >DIET     },{DIETarc;im({Yes})},
  1226.             {ファイル復元     >DIET -ra },{DIETres;im({Yes})},
  1227.             {ファイル差分作成 >BDIFF    },{BDIFF;im({Yes})},
  1228.             {ファイル差分更新 >BUPDATE  },{BUPDATE;im({Yes})},
  1229.             {        終       了        },{im({No})});
  1230.         });
  1231.     };
  1232.  
  1233. /*    ディレクトリ操作の選択    */
  1234. %DIRman    {
  1235.     loop    ({
  1236.         SNDMSG({erande_f.snd});
  1237.         footnote({ディレクトリ操作の処理を選択して下さい});
  1238.         select({ディレクトリ操作メニュー},
  1239.             Wtime4,{im({No})},
  1240.             {ツリー表示       =TREE     },{TREE;im({Yes})},
  1241.             {ディレクトリ作成 -mkdir    },{MKDIR;im({Yes})},
  1242.             {ディレクトリ削除 -rmdir    },{RMDIR;im({Yes})},
  1243.             {ディレクトリ複写 =XCOPY    },{DIRCOPY;im({Yes})},
  1244.             {        終       了        },{im({No})});
  1245.         });
  1246.     };
  1247.  
  1248. /*    フロッピィディスク操作の選択    */
  1249. %DISKman{
  1250.     loop    ({
  1251.         SNDMSG({erande_f.snd});
  1252.         footnote({フロッピィディスク操作の処理を選択して下さい});
  1253.         select({フロッピィディスク操作メニュー},
  1254.             Wtime4,{im({No})},
  1255.             {フロッピィ初期化 =FORMAT   },{FORMAT;im({Yes})},
  1256.             {フロッピィ複写   =DISKCOPY },{DISKCOPY;im({Yes})},
  1257.             {フロッピィ比較   =DISKCOMP },{DISKCOMP;im({Yes})},
  1258.             {        終       了        },{im({No})});
  1259.         });
  1260.     };
  1261.  
  1262. /*    ファイル操作メインメニュー    */
  1263. /*    設定する情報の選択    */
  1264. %FAPXFILE{
  1265.     loop    ({
  1266.         SNDMSG({erande_f.snd});
  1267.         footnote({ファイル操作を選択して下さい});
  1268.         select({ファイル操作メインメニュー},
  1269.             Wtime4,{im({No})},
  1270.             {       ファイル基本操作       },{FILEman1;im({Yes})},
  1271.             { 応用操作(lha,ish,diet,bdiff) },{FILEman2;im({Yes})},
  1272.             {       ディレクトリ操作       },{DIRman;im({Yes})},
  1273.             {    フロッピィディスク操作    },{DISKman;im({Yes})},
  1274.             {       既存ファイル編集       },{EDIT(1);im({Yes})},
  1275.             {       新規ファイル編集       },{EDIT(0);im({Yes})},
  1276.             {         ファイル実行         },{EXEC;im({Yes})},
  1277.             {       コマンド直接実行       },{COMMAND;im({Yes})},
  1278.             { FAPX v}|VerLev|{の説明 },
  1279.             {setcdir(CDIR);#FAPXHELP.PLP;im({Yes})},
  1280.             {         終         了        },{im({No})});
  1281.         });
  1282.     };
  1283.  
  1284. /*    作業領域定義    */
  1285. var    OLDFILE    [64];
  1286. var    NEWFILE    [64];
  1287. var    OLDDIR    [64];
  1288. var    NEWDIR    [64];
  1289.  
  1290. FAPXFILE;